package com.nbst.dao.mapper.mes;

import java.util.List;
import java.util.Map;

import com.nbst.dao.base.mapper.BaseMapper;
import com.nbst.model.mes.RoutingOper;

/**
 * @ClassName: RoutingOperMapper
 * @Description:
 * @author King
 * @date 2018年10月24日
 * 
 */
public interface RoutingOperMapper extends BaseMapper<RoutingOper> {
	/**
	 * 清空表
	 * 
	 * @return int
	 * @author King
	 * @date 2018年10月24日
	 */
	int deleteAll(Map<String,Object> map);

	/**
	 * 批量新增
	 * 
	 * @param list
	 * @return int
	 * @author King
	 * @date 2018年10月24日
	 */
	int insertBatch(List<RoutingOper> list);

	/**
	 * 根据物料内码查询工艺路线(有可能会查询出多条工艺路线)
	 * 
	 * @param fInterId
	 * @return List<RoutingOper>
	 * @author King
	 * @date 2018年10月24日
	 */
	List<RoutingOper> findByItemId(Integer fInterId);

	/**
	 * 根据物料内码查询工艺路线(取默认的工艺路线)
	 * 
	 * @param fInterId
	 * @return List<RoutingOper>
	 * @author King
	 * @date 2019年5月29日
	 */
	List<RoutingOper> findByItemIdfDefault(Integer fInterId);

	/**
	 * 根据工序id查工序名和对应设备信息
	 * 
	 * @param fInterId
	 * @return List<RoutingOper>
	 * @author King
	 * @date 2018年10月24日
	 */
	RoutingOper findByfOperID(Integer fOperID);

	/**
	 * 根据工序id查
	 * 
	 * @param fOperID
	 * @return List<RoutingOper>
	 * @author King
	 * @date 2019年4月26日
	 */
	List<RoutingOper> findByOperID(Integer fOperID);

	/**
	 * 新增工序设备关系
	 * 
	 * @param list
	 * @return int
	 * @author wl
	 * @date 2019年05月16日
	 */
	int insertRMG(Object object);

	/**
	 * 修改工序设备关系
	 * 
	 * @param list
	 * @return int
	 * @author wl
	 * @date 2019年05月16日
	 */
	int updateRMG(Object object);

	/**
	 * 删除工序设备关系
	 * 
	 * @param list
	 * @return int
	 * @author wl
	 * @date 2019年05月16日
	 */
	int deleteRMG(Object object);

	/**
	 * 批量新增检验方式
	 * 
	 * @param list
	 * @return int
	 * @author King
	 * @date 2019年8月6日
	 */
	int insertQualityBatch(List<Map<String,Object>> list);

	/**
	 * 查询工艺路线表体中的表头与表体id
	 * 
	 * @return List<Map<String,Object>>
	 * @author King
	 * @date 2019年8月6日
	 */
	List<Map<String,Object>> findByInterIDAndEntryID();

	/**
	 * 查询工艺路线检验方式表中的表头与表体id
	 * 
	 * @return List<Map<String,Object>>
	 * @author King
	 * @date 2019年8月6日
	 */
	List<Map<String,Object>> findByInterIDAndEntryID1();

	/**
	 * 修改工艺路线中的检验方式
	 * 
	 * @param map
	 * @return int
	 * @author King
	 * @date 2019年8月6日
	 */
	int updateQualityChkID(Map<String,Object> map);

	Integer countByItemId(Map<String,Object> map);

	/**
	 * 获取全部马达的工艺路线id
	 * 
	 * @return List<Integer>
	 * @author King
	 * @date 2020年4月16日
	 */
	List<Integer> getAllMotorRoutingId(Map<String,Object> map);

	/**
	 * 查询工艺路线id，分录id、工序名称
	 * 
	 * @return List<Integer>
	 * @author King
	 * @date 2020年4月16日
	 */
	List<Map<String,Object>> getRoutingOperInfo(Integer fInterID);

	/**
	 * 查询全部半成品的工艺路线id
	 * 
	 * @return List<Integer>
	 * @author King
	 * @date 2020年4月16日
	 */
	List<Integer> getAllSemiFinishedRoutingId(Map<String,Object> map);

}
